草庐IT

JavaBeans 替代品?

全部标签

datetime - Go 的替代日期/时间库

有没有Golang的time包的替代品?我无法接受它笨拙的界面和奇怪的做事方式。整体语言很棒,但它的这一部分从未让我满意。有人吗?一个非常好的、详尽的教程也可以(我还没有找到)我现在想做的是一个每秒只更新10次(或我设置的任何可变间隔)的goroutine。我还没有实现它,因为这个包不是很好玩。这是伪代码。functionGoRoutine(updatesPerSecondint){interval=1000msec/updatesPerSecondfor{ifenoughTimeHasPassed{doThings()}}} 最佳答案

go - 是否有比 ioutil.ReadFile 更快的替代方案?

我正在尝试制作一个基于md5校验和检查文件重复项的程序。不太确定我是否遗漏了什么,但是读取XCode安装程序应用程序(大约8GB)的这个函数使用了16GB的Ramfuncsearch(){unique:=make(map[string]string)files,err:=ioutil.ReadDir(".")iferr!=nil{log.Println(err)}for_,file:=rangefiles{fileName:=file.Name()fmt.Println("CHECKING:",fileName)fi,err:=os.Stat(fileName)iferr!=nil{f

http - ioutil.ReadAll 的替代方案?

对于我正在制作的程序,此函数在for循环中作为goroutine运行,具体取决于传入的url数量(无设定数量)。funcmakeRequest(urlstring,chchan必须使用响应的整个主体,因此ioutil.ReadAll似乎是完美的选择,但对可以传入的url数量没有限制,而且ReadAll的性质是它全部存储在内存中它开始感觉不像金票。我是Go的新手,所以如果您决定回答,如果您能在您的解决方案背后给出一些解释,我们将不胜感激! 最佳答案 我在学习如何使用Go时得到的一个见解是,ReadAll对于大型读者来说通常效率低下,并

go - 如何在 Go xml 结构标记中表示替代项

我正在尝试编写一组适当的结构标记来解析XMLversionofUCUM.以下是unit标记的两个示例:degree°planeangle2degreeFahrenheit°Ftemperature棘手的部分是value标签的内容,它可以是一个字符串(我用字符串属性表示)或一个函数(它需要一个自己的结构).到目前为止,这是我得到的:typeUnitstruct{Codestring`xml:Code,attr`CodeCapsstring`xml:CODE,attr`IsMetricbool`xml:isMetric,attr,omitempty`IsSpecialb

go - 替代或 github.com/gogo/protobuf/parser 包

我正在搜索一个包来解析protobuf文件,然后找到这个[1]:github.com/gogo/protobuf/parser但是,当我尝试执行gogetgithub.com/gogo/protobuf/parser时,没有这样的包。有人知道这个包的另一种选择吗?[1]https://libraries.io/go/github.com%2Fgogo%2Fprotobuf%2Fparser 最佳答案 您正在使用来自Libraries.io的非官方和旧文档。使用最新的官方文档,并按照安装说明进行操作。GowithGadgets的Pro

shell - python 的 shlex.split 替代 Go

简单的问题-是否有类似python的shlex.split的东西可以让我简单地解析/拆分/引用/转义类似shell的引用/反斜杠字符串?链接到shlex文档:http://docs.python.org/3.4/library/shlex.htmlshlex.split的作用示例:>>>importshlex>>>shlex.split('abcab\\c"ab\\"cd"key="\\"val\\""')['abc','abc','ab"cd','key="val"'] 最佳答案 标准库中没有任何内容,但Google确实发布了自己

design-patterns - 可能有数百个小类的工厂模式的替代方案

我正在开发一个用GoLang编写的小型游戏/模拟器,其中可能有数百种能力。对于每个玩家,他们将拥有1到3种能力。我会将这些与字符串或ID一起存储。实例化这些能力的最佳方式是什么。通常我会使用工厂类,但鉴于我所说的那么多,我不确定这是最好的方法。 最佳答案 你仍然可以使用工厂模式,这就是encoding/gob包用途。Playground:http://play.golang.org/p/LjR4PTTCvw例如在abilities.go中你可以有typeAbilityinterface{Execute()}varabilities=

git - 强大的 gitk/gitg 替代品?

我正在寻找图形化的git存储库查看器。Gitk很好并且与git本身一起分发,gitg是(在我看来)更好的gitk替代品,但两者都缺乏功能(搜索提交/标签/...,切换/配置时间(区域)的表示和等等)。因为我直接在终端中执行所有git操作,所以我不需要一些重载的GUI来尝试执行git的所有魔力,我只需要一个高效的查看器来以图形方式表示我的文件、提交、分支、标签和等等,比gitk/gitg有更多的特性。有什么建议吗?编辑:大多数时候我在linux上工作。 最佳答案 我不认为这个问题在这里真的有它的位置,但如果你想要建议,我可以将你链接到

Git子模块替代品?

我有几个工作树有一些依赖。据我所知,gitsubmodule将强制执行以下内容:在每个使用它的工作树(主)的子目录中拥有每个工作树(从属)的副本主存储库复制从属存储库的所有信息我不介意repo协议(protocol)变大,但拥有副本对我来说是完全不能接受的。这将迫使我重新组织所有项目,以便副本可以链接。此外,编辑错误的文件很容易导致困惑。我有另一个想法:每个master存储其所有slave的列表。不需要母版中的其他信息。每次在master中提交时,都会在slave中创建一个“snapshot-commit”。“snapshot-commit”是工作树当前状态的快照,它忽略了索引的当前状

ruby-on-rails - 在两个或多个 Rails 应用程序之间共享代码……git 子模块的替代方案?

我们有两个单独的rails_app,foo/和bar/(分开是有充分理由的)。它们都依赖于common/文件夹中的某些模型等,目前与foo和bar平行。我们当前的svn设置使用svn:externals来共享common/。这个周末我们想试试git。经过大量研究,解决此问题的“犹太”方法似乎是使用gitsubmodule。在将foo、bar、common分离到单独的存储库之后,我们得到了它的工作,但随后实现了所有stringsattached:Alwayscommitthesubmodulebeforecommittingtheparent.Alwayspushthesubmodule